对象存储(OSS)
什么是对象存储
对象存储(如AWS S3)是一种非结构化数据存储服务,用于存储和管理图片、视频、文档、日志等海量文件。使用对象存储作为源通常适用于静态资源加速(静态文件直接托管在对象存储桶中),低成本存储或者无服务器架构的业务。
为什么要使用对象存储作为源
对象存储具有高可用、低成本、易扩展的特性。
1.oss支持高并发的读取,适合应对突发流量。
2.其安全性和权限控制能有效地避免资源被恶意盗刷。
3.运维简化。自动适应业务需求,无需手动扩容。
对象存储在CDN的应用
架构说明
如何在LightCDN中添加OSS?(授权接入的参数从哪里获取?)
你可以前往存储列表 → 第三方对象存储,点击授权接入,如下图所示,从第三获取到各个参数填入。
AWS S3参数说明
参数 | |
---|---|
名称 | 仅用于平台区别,非第三方对象存储桶名称。 |
第三方平台 | 当前仅可选择AWS S3。后续会上线其他平台。 |
密钥ID(AK)+ 密钥KEY(SK) | 即access Key和Secret Key,是用户身份验证和授权的凭证,常用于云平台或者API服务中。 具体获取方式如下: 1.点击账号头像 → 安全凭证。 ![]() 2.选择访问管理 → 用户 →创建用户。 3.填写一个用户名称,专用于S3的授权。 ![]() ![]() ![]() 6.选择完毕,下一步直至创建完成。 7.返回用户→点击用户名,进入用户详情。 8.安全凭证→ 创建访问秘钥。 ![]() ![]() 10.由于秘钥访问密码只展示一次。请及时保存。 ![]() |
区域代号 | 进入需要授权的S3存储桶,对应列表的AWS区域。![]() |
获取方式 | 获取方式支持两种。 1.指定存储空间。即只授权一个存储桶,直接填写该存储桶的名字即可。对应S3存储桶列表的名称。 ![]() 2.指定路径。仅绑定存储桶的某个目录(如bucket-name.oss-cn-hangzhou.aliyuncs.com/path/to/dir/)。CDN仅能访问该目录下的文件,路径自动截取前缀(请求/file实际回源/path/to/dir/file)。适用于按目录隔离加速或多业务共用一个桶的场景。 |
关键配置项
参数 | 引导 |
---|---|
回源主机名 | 源为对象存储时,回源主机名一般选择自定义,并填写对象存储桶域名作为host头。 由于加速域名与源站域名不一致。对象存储服务商依赖host头用于验证。 当源站为对象存储时,建议将回源主机名设置为自定义域名,并填写对象存储的桶域名(如 bucket-name.s3.us-east-1.amazonaws.com)作为 Host 头。由于 CDN 加速域名与源站域名不同,对象存储服务商依赖 Host 头进行请求验证和路由,因此必须正确配置以确保回源成功。 |
缓存策略 | 设置合理的缓存过期时间,静态文件建议7天。 |
安全加固 | ●启用CDN鉴权(如URL签名、Referer防盗链)。 ●OSS端配置Bucket Policy,限制仅CDN的IP段可访问。 |
验收配置
测试回源
访问加速域名,检查返回状态是否为200。
若失败,检查AK/SK权限或对象存储的存储桶策略是否拦截了CDN节点服务器的请求。
安全建议
最小权限原则
当前教程中的授权是以创建独立的RAM子账号来处理,近授予对象存储的权限。若熟悉第三方的权限配置,可自行配置权限。
定期轮转AK/SK
可定期更新AK/SK,并在控制台同步更新。
开启CDN鉴权
结合CDN的URL鉴权功能,防止盗链。
常见错误
回源失败,展示403错误如何处理?
检查AK/SK是否正确,或确认RAM的权限是否正常。
如何处理CDN缓存与对象存储更新不一致?
配置LightCDN的缓存过期时间与对象存储的刷新时间一致,或更新对象存储内容之后手动刷新缓存。